package com.libing.service;

import com.github.pagehelper.PageInfo;
import com.libing.entity.Customer;
import com.libing.entity.CustomerAllInfo;
import com.libing.entity.CustomerLevel;
import com.libing.entity.User;
import com.libing.enums.StateEnum;
import com.libing.web.vo.CustomerVO;

import java.util.List;

/**
 * @Description: 客户信息 CRUD Service
 * @Auther: LEE
 * @Date: Create in 2018/2/4 11:44
 */
public interface CustomerService {

    StateEnum insert(Customer customer);

    StateEnum update(Customer customer);

    StateEnum delete(Long id);

    Customer selectById(Long id);

    Boolean insert(CustomerAllInfo customerAllInfo, User user);

    PageInfo<CustomerVO> queryCustomersByParams(Integer pageNum, String nameOrContact, String companyName, Long levelId);

    List<CustomerLevel> queryCustomerLevel(Long id);

    StateEnum insertCusLevel(CustomerLevel customerLevel);

    StateEnum updateCusLevel(CustomerLevel customerLevel);

    StateEnum deleteCusLevel(Integer id);
}
